package ar.uade.distribuidas.tpo.base.remoto;

import java.rmi.Remote;
import java.rmi.RemoteException;

import ar.uade.distribuidas.tpo.base.dominiodto.RodamientoDTO;

public interface IGestionRodamientos extends Remote {
	// TODO: interfaces de las funcionalidades
	// TODO como vamos a implementar eso de los rodamientos equivalentes

	/**
	 * Dada algo de la info de un rodamiento(marca y/o sufijo, etc) devuelve si
	 * existe un rodamiento que cumpla esas caracteristicas
	 * 
	 * @param rodamiento
	 * @return
	 */
	public boolean existeRodamiento(RodamientoDTO rodamiento) throws RemoteException;

	/**
	 * Dada toda de la info de un rodamiento(nro serie, marca, sufijo, pais)
	 * devuelve el id del rodamiento
	 * 
	 * @param rodamiento
	 * @return
	 */
	public int getIdRodamiento(RodamientoDTO rodamiento) throws RemoteException;

	/**
	 * Dada toda de la info de un rodamiento(nro serie, marca, sufijo, pais)
	 * devuelve el dto del rodamiento
	 * 
	 * @param rodamiento
	 * @return
	 */
	public RodamientoDTO getRodamiento(RodamientoDTO rodamiento) throws RemoteException;
}
